﻿using EasyAdmin.Application.Contracts.Systems.Orgs.Dtos;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EasyAdmin.Application.Contracts.Systems.Orgs
{
    /// <summary>
    /// 机构管理
    /// </summary>
    public interface IOrgAppService
    {
        /// <summary>
        /// 机构分页
        /// </summary>
        /// <param name="condition"></param>
        /// <returns></returns>
        Task<SqlSugarPagedList<OrgOutput>> Page(OrgPageCondition condition);
        
        /// <summary>
        /// 获得机构信息
        /// </summary>
        /// <param name="orgId"></param>
        /// <returns></returns>
        Task<OrgOutput> GetOrgByOrgId(long orgId);
       
        /// <summary>
        /// 创建机构信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task CreateOrg(CreateUpdateOrgInput input);
       
        /// <summary>
        /// 更新机构信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task UpdateOrg(CreateUpdateOrgInput input);
        
        /// <summary>
        /// 删除机构信息
        /// </summary>
        /// <param name="OrgId"></param>
        /// <returns></returns>
        Task DeleteOrg(long OrgId);
    }
}
